package com.example.demo.config.jwt;

import lombok.Data;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.stereotype.Component;

/**
 * 这个类是注入 yml 中关于 jwt 的参数
 */
public class JwtProperties {

    /**
     * token过期时间 60 分钟，单位分钟  1小时
     */
    public static Integer tokenExpireTime=60;

    /**
     *  刷新Token过期时间，单位分钟  有效期一天
     */
   public static Integer refreshTokenExpireTime=1440;

    /**
     * Shiro缓存有效期，单位分钟，有效期 两小时
     */
    public static Integer shiroCacheExpireTime=120;

    /**
     * token加密密钥
     */
    public static String secretKey="jokerAkKey";

    /**
     * request请求头属性
     */
    public static final String REQUEST_AUTH_HEADER="Authorization";

    /**
     * JWT-account,放置 用户名的地方
     */
    public static final String ACCOUNT = "account";

    /**
     * 这个是 shiro 缓存 放置在 redis 中的名字
     */
    public static final String PREFIX_SHIRO_CACHE = "jokerak:cache:";

    /**
     * 放置在 Redis 中的 refreshtoken 的名字的前缀
     */
    public final static String PREFIX_REDIS_REFRESH_TOKEN = "jokerak:refresh_token:";

    /**
     * JWT 中 refreshtoken 设置的时间
     */
    public final static String REFRESH_TIME_MILLIS = "refreshTimeMillis";

}